Advancements in a variety of specific computer-related technologies have given rise to a whole range of new mobile computing devices, including mobile handsets commonly referred to as “smart phones”, tablet computers (sometimes referred to as slate computers), and increasingly smaller, more powerful and often less expensive, laptop computers. These new devices very frequently have touch sensitive devices for use as an input mechanism, and in many instances, as the primary input and output mechanism. For instance, in the case of many smart phones and tablet computers, a touchscreen display is frequently used as the primary input/output mechanism. With many new laptops, a touch-based track pad may be used as a mechanism for controlling a cursor or pointing device. Even conventional input mechanisms, such as the computer mouse, are being designed to include touch-sensitive surfaces for receiving user-input. Designing software applications for devices that utilize these touch-based input devices can be challenging, particularly when there is no alternative input mechanism (e.g., conventional mouse or physical keyboard) and the size of the display is small.